In a wireless communication system, when information is to be transmitted to a receiver apparatus through a radio channel, a transmission apparatus carries out an encoding process for information bits to be transmitted.
In the wide sense, the encoding process signifies an error correction encoding process for compensating for bit errors of information bits occurring in the transmission apparatus, receiver apparatus, radio channel and so forth or such processes as rate matching (RM) and channel interleave (ChIL) carried out for encoded bits obtained as a result of the error correction encoding and so forth.
Here, the processes carried out for the encoded bits are referred to as communication path encoding process in order to distinguish the process from the error correction encoding process. In other words, the encoding process is configured from the error correction encoding process and the communication path encoding process.
On the other hand, the receiver apparatus carries out a decoding process for received data.
The decoding process is carried out for cancelling the effect of the encoding process carried out by the transmission apparatus and estimates information bits transmitted from the transmission apparatus from the received data.
Therefore, the decoding process is configured from a communication path decoding process and an error correction decoding process, and the processes respectively correspond to the communication path encoding process and the error correction encoding process in the transmission apparatus (it is to be noted that, unless confusion occurs, the processes are hereinafter referred to simply as communication path process and decoding process).
The communication path process is carried out for cancelling the effect of the communication path encoding process carried out by the transmission apparatus, and signifies such processes as channel deinterleave (ChDeIL) and derate matching (DeRM) carried out for individual encoded blocks for which the communication path encoding process has been carried out and so forth.
The decoding process is carried out for cancelling the effect of the error correction encoding process carried out by the transmission apparatus and estimates information bits actually transmitted thereto from received data for which the communication path process has been carried out.
The encoding process and the decoding process are described in more detail below.
(1) Processing Unit, Transmission Rate
The present case presupposes a communication system wherein a block encoding process is carried out. In this instance, encoding and decoding of information bits to be transmitted are carried out in a certain processing unit time period. It is to be noted that the processing unit and the unit of transmission bits are hereinafter referred to as sub frame and transport block (TRB), respectively, in accordance with the 3GPP (3rd Generation Partnership Project) system which is an example of a communication system for carrying out a block encoding process.
The transmission rate per TRB in the layer 1-level is generally determined by a time interval between processing units and a bit size of a TRB.
(2) Communication Path Encoding Process
As described above, the communication path encoding process includes, for example, channel interleave and rate matching.
(2-A) Channel Interleave
The channel interleave is a treatment for dispersing places at which an error appears in received data to the entire codes by carrying out permutation of encoded bits in order to prevent such a situation that the SNR (Signal to Noise Ratio) of a radio channel is degraded in burst by fading or the like and errors appear successively at a specific place of the received data.
(2-B) Rate Matching
The rate matching is carried out for performing such treatments as puncturing and repetition for encoded bits when there is a difference between the encoded bit size and bits which can be actually transmitted.
The puncturing is a treatment for thinning out bits at specified positions on the transmission side. On the other hand, on the reception side, 0 is inserted into each position from which a bit was thinned out.
Meanwhile, the repetition is a treatment for copying and repeating bits on the transmission side. On the other hand, on the reception side, each copied bit is added (for example, Maximum Ratio Combination) to the bit of the copying source.
It is to be noted that, generally since a combination of bits to be treated has an influence on an error rate characteristic, a bit pattern by the thinning out or the repeating described above is determined depending upon the entire codes. Therefore, time required for the decoding process on the reception side depends on the code bit size.
A particular example of the channel interleave and the rate matching described above is disclosed, for example, in 3GPP TS36.212 v8.9.0.
(3) Code Block Segmentation
If the processing unit time period is fixed, then in order to increase the transmission rate, the size of the TRB may be increased. However, if the TRB is increased in size, then it comes to exceed a processing unit which can be processed in the encoding process and the decoding process.
Therefore, where the TRB size exceeds a certain specified size, the TRB is segmented into suitable sub blocks, and the encoding process and the decoding process are carried out in a unit of a sub block.
This sub block is called code block (CB), and to segment the TRB into a plurality of CBs is called code block segmentation.
It is to be noted that it is known generally that increase in size of the processing unit of a code is advantageous from a point of view of an error rate characteristic.
However, as regards a code whose encoding depends upon the bit size like a turbo code, if the processing unit increases, then the degree of complication in processing increases, which gives rise to difficulty upon incorporation of the code. Further, characteristic improvement reaches a saturation state at some degree of magnitude.
Therefore, it is effective to limit a processing unit for encoding to a suitable maximum value.
(4) Iterative Decoding
The iterative decoding is a decoding processing method represented by a turbo decoder and signifies, for example, a processing method wherein a predetermined element decoding process is carried out for received data (prior likelihood) and feeding back a posterior likelihood obtained as a result of the process to update the prior likelihood and then iteratively carrying out the element decoding process again for the updated prior likelihood to improve the accuracy of the posterior likelihood.
Further, bits obtained by displaying the posterior likelihood as a logarithm likelihood ratio and carrying out hard decision are used as estimation bits for the transmitted information bits.
Accordingly, the error rate of data after the iterative decoding is characterized taking inputted data (prior likelihood as data after the communication path decoding process) and a iteration number of times as parameters.
(4-A) Early Stopping Decision
Procedure capable of deciding whether or not estimation bits are bits (error free) same as the transmitted information bits (at least with a high degree of probability) is introduced. A process regarding the decision is referred to as error free decision process.
As a particular example of the error free decision process, a CRC (Cyclic Redundancy Check) applied for each CB in the LTE (Long Term Evolution) system of the 3GPP is available.
The error free decision process is carried out for each iterative process, and, if a decision of an error free condition is obtained, then the processing is stopped. Consequently, time required for the decoding process can be reduced.
(4-B) Iterative Controlling Method
As the decoding processing method in the iterative decoding apparatus, a method is known in which a plurality of CBs included in a TRB are successively processed using a single decoder (refer to Patent Document 1 specified hereinbelow).
FIG. 1 is a view illustrating an example of a conventional iterative controlling method in a iterative decoding apparatus.
The iterative decoding apparatus carries out a iterative decoding process in order for CBs for which the communication path process is carried out, and carries out an error free decision for each iteration of the iterative decoding process. Then, if it is decided that a result of the decision of an error free condition is obtained, then the iterative decoding process for a next CB is carried out immediately.    [Patent Document 1] International Publication Pamphlet No. WO 2008/015742    [Non-Patent Document 1] 3GPP TS36.212 v8.8.0
With the iterative controlling method illustrated in FIG. 1, there is the possibility that a iterative decoding process for each CB may be executed at almost all timings within a specified time period within which a iterative process by a decoder is carried out.
For example, if each CB is decided as error free with a small number of iterations, then the timing at which the iterative decoding process is to be carried out for each CB is advanced.
On the other hand, if the decoding process for the top CB (CB 1) is carried out without decided as error free till a point of time near to an end of the specified time period and thereafter the remaining CBs are processed in the remaining time period, then the timing at which the iterative decoding process is carried out for the remaining CBs is delayed.
Accordingly, it is required for the conventional iterative controlling apparatus to incorporate therein a memory capable of retaining input data of all CBs therein for a period from a timing at which the process for the top CB is started to an end of the specified time period.
Further, since, if the transmission rate increases, then the number of CBs increases accordingly, the required memory amount increases, resulting in difficulty in corporation of the iterative decoding apparatus described above.